Separate Query from Modifier
概述
分离查询和修改是一种重构技术,将既有返回值又有副作用的函数分离为查询函数和修改函数。
关键内容
- 适用场景:
- 函数既返回值又有副作用
- 查询操作与状态修改混合在一起
-
难以区分哪些操作有副作用
-
实施步骤:
- 创建新的查询函数
- 复制原函数的返回逻辑
- 修改原函数,让它只负责副作用
- 替换依赖返回值的调用点
-
进行测试
-
实施效果:
- 明确哪些操作会产生副作用
- 提高代码的可预测性
- 遵循命令查询分离原则
来源
- 重构目录 — refactoring-catalog.md
- [[]] —